$(function () {
    //需求1,定义校验规则
    let form = layui.form
    //form 对象中有一个方法verify
    //参数是对象类型,属性是规则名称
    form.verify({
        nickname: [
            /^[\S]{1,10}$/,
            '昵称的长度为1-10的非空格字符'
        ]
    })

    //需求2，渲染用户信息，封装成函数，后面还要用
    //函数不调用  不执行
    let layer = layui.layer
    initUserInfo()
    function initUserInfo() {
        axios({
            method: 'GET',
            url: '/my/userinfo',
        }).then(({ data: res }) => {
            // console.log(res);
            if (res.data.statue) {
                return layer.msg(res.data.message)
            }
            form.val('formUserInfo', res.data)
        })
    }

    //需求3，重置功能
    // $('form').on('reset',function(){})  可以选择reset事件来绑定
    //也可以使用点击事件，最好在按钮前面加上ID属性
    $('#btvReset').on('click', function (e) {
        //阻止浏览器默认行为
        e.preventDefault()
        //重新渲染表单  这个是封装的函数
        initUserInfo()
    })

    //需求4，修改用户信息
    $('#usrForm').on('submit', function (e) {
        e.preventDefault()
        axios({
            method: "POST",
            url: '/my/userinfo',
            data: $(this).serialize()
        }).then(({ data: res }) => {
            console.log(res);
            if (res.status !== 0) {
                return layer.msg(res.message)
            }
            //成功：提示
            layer.msg('恭喜您，修改用户信息成功')
            //子页面中调用父页面中的方式
            window.parent.getUserInfo()
        })
    })
})